package frsf.cidisi.exercise.tp1.utiles;

public class Parametros {
	
	
	private double pesoMaximoAcoplado;
	private double pesoPorUnidadOro;
	private double pesoPorUnidadRubi;
	private double pesoPorUnidadAnillo;
	private double pesoPorUnidadDiamante;
	private double pesoPorUnidadColgante;
	private double ponderacionPesoTesoro;
	private double ponderacionDistancia;
	private double porcentajeMinimoDeCarga;	

	private int posicionInicial;
	private int posicionDeseada;
	private int cantidadDeTesoros;
	private int cantidadAldeas;
	
	private String[] nombreAldeas;
	private String[] nombreAcciones; 

	private String estrategia;
	private boolean pirata;
	private boolean generarArbol;
	
	public Parametros(){
		
		initState();
		
	}

	public void initState(){
		
		//Configuracion inicial
		setPesoMaximoAcoplado(450);
		setPesoPorUnidadOro(0.001);
		setPesoPorUnidadRubi(0.0004);
		setPesoPorUnidadAnillo(0.0015);
		setPesoPorUnidadDiamante((7/9000));
		setPesoPorUnidadColgante((1/750));
		setPonderacionPesoTesoro(-0.1);
		setPonderacionDistancia(0.1);
		setPorcentajeMinimoDeCarga(0.75);
		
		setPosicionInicial(1);
		setPosicionDeseada(6);
		setCantidadDeTesoros(5);
		setCantidadAldeas(11);
					
		setNombreAldeas(new String[]{"Aragaey","Ase","Bresol","Bulouve","Cabe","Cenede","Ergintone","Icaedur","Mixocu","Peregaey","Vinizaile"});
		setNombreAcciones(new String[]{"TomarTesoro","AvanzarAAragaey","AvanzarAAse","AvanzarABresol","AvanzarABulouve","AvanzarACabe","AvanzarACenede","AvanzarAErgintone","AvanzarAIcaedur","AvanzarAMixocu","AvanzarAPeregay","AvanzarAVinizaile"});
		
		setEstrategia("Profundidad");
		setPirata(false);
		setGenerarArbol(false);
			
	}
	
	public double getPesoMaximoAcoplado() {
		return pesoMaximoAcoplado;
	}

	public void setPesoMaximoAcoplado(double pesoMaximoAcoplado) {
		this.pesoMaximoAcoplado = pesoMaximoAcoplado;
	}

	public double getPesoPorUnidadOro() {
		return pesoPorUnidadOro;
	}

	public void setPesoPorUnidadOro(double pesoPorUnidadDeOro) {
		this.pesoPorUnidadOro = pesoPorUnidadDeOro;
	}

	public double getPesoPorUnidadRubi() {
		return pesoPorUnidadRubi;
	}

	public void setPesoPorUnidadRubi(double pesoPorUnidadRubi) {
		this.pesoPorUnidadRubi = pesoPorUnidadRubi;
	}

	public double getPesoPorUnidadAnillo() {
		return pesoPorUnidadAnillo;
	}

	public void setPesoPorUnidadAnillo(double pesoPorUnidadAnillo) {
		this.pesoPorUnidadAnillo = pesoPorUnidadAnillo;
	}

	public double getPesoPorUnidadDiamante() {
		return pesoPorUnidadDiamante;
	}

	public void setPesoPorUnidadDiamante(double pesoPorUnidadDiamante) {
		this.pesoPorUnidadDiamante = pesoPorUnidadDiamante;
	}

	public double getPesoPorUnidadColgante() {
		return pesoPorUnidadColgante;
	}

	public void setPesoPorUnidadColgante(double pesoPorUnidadColgante) {
		this.pesoPorUnidadColgante = pesoPorUnidadColgante;
	}

	public double getPonderacionPesoTesoro() {
		return ponderacionPesoTesoro;
	}

	public void setPonderacionPesoTesoro(double ponderacionPesoTesoro) {
		this.ponderacionPesoTesoro = ponderacionPesoTesoro;
	}

	public double getPonderacionDistancia() {
		return ponderacionDistancia;
	}

	public void setPonderacionDistancia(double ponderacionDistancia) {
		this.ponderacionDistancia = ponderacionDistancia;
	}

	public double getPorcentajeMinimoDeCarga() {
		return porcentajeMinimoDeCarga;
	}

	public void setPorcentajeMinimoDeCarga(double porcentajeMinimoDeCarga) {
		this.porcentajeMinimoDeCarga = porcentajeMinimoDeCarga;
	}

	public int getPosicionDeseada() {
		return posicionDeseada;
	}

	public void setPosicionDeseada(int posicionDeseada) {
		this.posicionDeseada = posicionDeseada;
	}

	public int getCantidadDeTesoros() {
		return cantidadDeTesoros;
	}

	public void setCantidadDeTesoros(int cantidadDeTesoros) {
		this.cantidadDeTesoros = cantidadDeTesoros;
	}

	public int getCantidadAldeas() {
		return cantidadAldeas;
	}

	public void setCantidadAldeas(int cantidadAldeas) {
		this.cantidadAldeas = cantidadAldeas;
	}

	public String[] getNombreAldeas() {
		return nombreAldeas;
	}

	public void setNombreAldeas(String[] nombreAldeas) {
		this.nombreAldeas = nombreAldeas;
	}

	public void setPosicionInicial(int posicionInicial) {
		this.posicionInicial = posicionInicial;
	}

	public int getPosicionInicial() {
		return posicionInicial;
	}

	public void setNombreAcciones(String[] nombreAcciones) {
		this.nombreAcciones = nombreAcciones;
	}

	public String[] getNombreAcciones() {
		return nombreAcciones;
	}

	public void setEstrategia(String estrategia) {
		this.estrategia = estrategia;
	}

	public String getEstrategia() {
		return estrategia;
	}

	public void setPirata(boolean pirata) {
		this.pirata = pirata;
	}

	public boolean isPirata() {
		return pirata;
	}

	public void setGenerarArbol(boolean generarArbol) {
		this.generarArbol = generarArbol;
	}

	public boolean isGenerarArbol() {
		return generarArbol;
	}
	
}
